╬πδαΓδσφΦσ

╠φεπε∩ε≥ε≈φε±≥ⁿ
╧≡ε÷σ±±√, ∩ε≥εΩΦ Φ ∩≡Φε≡Φ≥σ≥√
╠φεπε∩ε≥ε≈φε±≥ⁿ Γ Java
╠φεπε∩ε≥ε≈φε±≥ⁿ Φ αφΦ∞α÷Φ 
╤Φφ⌡≡εφΦτα÷Φ  ∩ε≥εΩεΓ
╧ε≥εΩΦ-Σσ∞εφ√
└∩δσ≥ Rectangles
╚±⌡εΣφ√σ ≥σΩ±≥√
╬∩Φ±αφΦσ ≥σΩ±≥εΓ

    ╨σαδΦτα÷Φ  ∞φεπε∩ε≥ε≈φε±≥Φ Γ Java

    Σεδµφ√ Γε±∩εδⁿτεΓα≥ⁿ±  Ωδα±±ε∞ java.lang.Thread. ┬ ²≥ε∞ Ωδα±±σ ε∩≡σΣσδσφ√ Γ±σ ∞σ≥εΣ√, φσεß⌡εΣΦ∞√σ Σδ  ±ετΣαφΦ  ∩ε≥εΩεΓ, ≤∩≡αΓδσφΦ  Φ⌡ ±ε±≥ε φΦσ∞ Φ ±Φφ⌡≡εφΦτα÷ΦΦ.

    ╩αΩ ∩εδⁿτεΓα≥ⁿ±  Ωδα±±ε∞ Thread?

    ┼±≥ⁿ ΣΓσ Γετ∞εµφε±≥Φ.

    • ┬ε-∩σ≡Γ√⌡, Γ√ ∞εµσ≥σ ±ετΣα≥ⁿ ±ΓεΘ Σε≈σ≡φΦΘ Ωδα±± φα ßατσ Ωδα±±α Thread. ╧≡Φ ²≥ε∞ Γ√ Σεδµφ√ ∩σ≡σε∩≡σΣσδΦ≥ⁿ ∞σ≥εΣ run. ┬α°α ≡σαδΦτα÷Φ  ²≥επε ∞σ≥εΣα ß≤Σσ≥ ≡αßε≥α≥ⁿ Γ ≡α∞Ωα⌡ ε≥Σσδⁿφεπε ∩ε≥εΩα.
    • ┬ε-Γ≥ε≡√⌡, Γα° Ωδα±± ∞εµσ≥ ≡σαδΦτεΓα≥ⁿ Φφ≥σ≡⌠σΘ± Runnable. ╧≡Φ ²≥ε∞ Γ ≡α∞Ωα⌡ Γα°σπε Ωδα±±α φσεß⌡εΣΦ∞ε ε∩≡σΣσδΦ≥ⁿ ∞σ≥εΣ run, Ωε≥ε≡√Θ ß≤Σσ≥ ≡αßε≥α≥ⁿ ΩαΩ ε≥Σσδⁿφ√Θ ∩ε≥εΩ.

    ┬≥ε≡εΘ ±∩ε±εß ε±εßσφφε ≤Σεßσφ Γ ≥σ⌡ ±δ≤≈α ⌡, ΩεπΣα Γα° Ωδα±± Σεδµσφ ß√≥ⁿ ≤φα±δσΣεΓαφ ε≥ ΩαΩεπε-δΦßε Σ≡≤πεπε Ωδα±±α (φα∩≡Φ∞σ≡, ε≥ Ωδα±±α Applet) Φ ∩≡Φ ²≥ε∞ Γα∞ φ≤µφα ∞φεπε∩ε≥ε≈φε±≥ⁿ. ╥αΩ ΩαΩ Γ  τ√Ωσ ∩≡επ≡α∞∞Φ≡εΓαφΦ  Java φσ≥ ∞φεµσ±≥Γσφφεπε φα±δσΣεΓαφΦ , φσΓετ∞εµφε ±ετΣα≥ⁿ Ωδα±±, Σδ  Ωε≥ε≡επε Γ Ωα≈σ±≥Γσ ≡εΣΦ≥σδⁿ±Ωεπε ß≤Σ≤≥ Γ√±≥≤∩α≥ⁿ Ωδα±±√ Applet Φ Thread. ┬ ²≥ε∞ ±δ≤≈ασ ≡σαδΦτα÷Φ  Φφ≥σ≡⌠σΘ±α Runnable  Γδ σ≥±  σΣΦφ±≥Γσφφ√∞ ±∩ε±εßε∞ ≡σ°σφΦ  ταΣα≈Φ.

    ╠σ≥εΣ√ Ωδα±±α Thread

    ┬ Ωδα±±σ Thread ε∩≡σΣσδσφ√ ≥≡Φ ∩εδ , φσ±ΩεδⁿΩε Ωεφ±≥≡≤Ω≥ε≡εΓ Φ ßεδⁿ°εσ ΩεδΦ≈σ±≥Γε ∞σ≥εΣεΓ, ∩≡σΣφατφα≈σφφ√⌡ Σδ  ≡αßε≥√ ± ∩ε≥εΩα∞Φ. ═Φµσ ∞√ ∩≡ΦΓσδΦ Ω≡α≥Ωεσ ε∩Φ±αφΦσ ∩εδσΘ, Ωεφ±≥≡≤Ω≥ε≡εΓ Φ ∞σ≥εΣεΓ.

    ╤ ∩ε∞ε∙ⁿ■ Ωεφ±≥≡≤Ω≥ε≡εΓ Γ√ ∞εµσ≥σ ±ετΣαΓα≥ⁿ ∩ε≥εΩΦ ≡ατδΦ≈φ√∞Φ ±∩ε±εßα∞Φ, ≤Ωατ√Γα  ∩≡Φ φσεß⌡εΣΦ∞ε±≥Φ Σδ  φΦ⌡ Φ∞  Φ π≡≤∩∩≤. ╚∞  ∩≡σΣφατφα≈σφε Σδ  ΦΣσφ≥Φ⌠ΦΩα÷ΦΦ ∩ε≥εΩα Φ  Γδ σ≥±  φσεß τα≥σδⁿφ√∞ α≥≡Φß≤≥ε∞. ╫≥ε µσ Ωα±ασ≥±  π≡≤∩∩, ≥ε εφΦ ∩≡σΣφατφα≈σφ√ Σδ  ε≡παφΦτα÷ΦΦ τα∙Φ≥√ ∩ε≥εΩεΓ Σ≡≤π ε≥ Σ≡≤πα Γ ≡α∞Ωα⌡ εΣφεπε ∩≡ΦδεµσφΦ .

    ╠σ≥εΣ√ Ωδα±±α Thread ∩≡σΣε±≥αΓδ ■≥ Γ±σ φσεß⌡εΣΦ∞√σ Γετ∞εµφε±≥Φ Σδ  ≤∩≡αΓδσφΦ  ∩ε≥εΩα∞Φ, Γ ≥ε∞ ≈Φ±δσ Σδ  Φ⌡ ±Φφ⌡≡εφΦτα÷ΦΦ.

    ╧εδ 

    ╥≡Φ ±≥α≥Φ≈σ±ΩΦ⌡ ∩εδ  ∩≡σΣφατφα≈σφ√ Σδ  φατφα≈σφΦ  ∩≡Φε≡Φ≥σ≥εΓ ∩ε≥εΩα∞.

    • NORM_PRIORITY

    ═ε≡∞αδⁿφ√Θ

    public final static int NORM_PRIORITY;
    • MAX_PRIORITY

    ╠αΩ±Φ∞αδⁿφ√Θ

    public final static int MAX_PRIORITY;
    • MIN_PRIORITY

    ╠ΦφΦ∞αδⁿφ√Θ

    public final static int MIN_PRIORITY;

    ╩εφ±≥≡≤Ω≥ε≡√

    ╤ετΣαφΦσ φεΓεπε εß·σΩ≥α Thread

    public Thread();

    ╤ετΣΓαφΦσ φεΓεπε εß·σΩ≥α Thread ± ≤ΩαταφΦσ∞ εß·σΩ≥α, Σδ  Ωε≥ε≡επε ß≤Σσ≥ Γ√τ√Γα≥ⁿ±  ∞σ≥εΣ run

    public Thread(Runnable target);

    └φαδεπΦ≈φε ∩≡σΣ√Σ≤∙σ∞≤, φε Σε∩εδφΦ≥σδⁿφε ταΣασ≥±  Φ∞  φεΓεπε εß·σΩ≥α Thread

    public Thread(Runnable target, String name);

    ╤ετΣαφΦσ εß·σΩ≥α Thread ± ≤ΩαταφΦσ∞ σπε Φ∞σφΦ

    public Thread(String name);

    ╤ετΣαφΦσ φεΓεπε εß·σΩ≥α Thread ± ≤ΩαταφΦσ∞ π≡≤∩∩√ ∩ε≥εΩα Φ εß·σΩ≥α, Σδ  Ωε≥ε≡επε Γ√τ√Γασ≥±  ∞σ≥εΣ run

    public Thread(ThreadGroup group,
      Runnable target);

    └φαδεπΦ≈φε ∩≡σΣ√Σ≤∙σ∞≤, φε Σε∩εδφΦ≥σδⁿφε ταΣασ≥±  Φ∞  φεΓεπε εß·σΩ≥α Thread

    public Thread(ThreadGroup group,
      Runnable target, String name);

    ╤ετΣαφΦσ φεΓεπε εß·σΩ≥α Thread ± ≤ΩαταφΦσ∞ π≡≤∩∩√ ∩ε≥εΩα Φ Φ∞σφΦ εß·σΩ≥α

    public Thread(ThreadGroup group, String name);

    ╠σ≥εΣ√

    • activeCount

    ╥σΩ≤∙σσ ΩεδΦ≈σ±≥Γε αΩ≥ΦΓφ√⌡ ∩ε≥εΩεΓ Γ π≡≤∩∩σ, Ω Ωε≥ε≡εΘ ∩≡ΦφαΣδσµΦ≥ ∩ε≥εΩ

    public static int activeCount();
    • checkAccess

    ╥σΩ≤∙σ∞≤ ∩ε≥εΩ≤ ≡ατ≡σ°ασ≥±  Φτ∞σφ ≥ⁿ εß·σΩ≥ Thread

    public void checkAccesss();
    • countStackFrames

    ╬∩≡σΣσδσφΦσ ΩεδΦ≈σ±≥Γα ⌠≡σΘ∞εΓ Γ ±≥σΩσ

    public int countStackFrames();
    • currentThread

    ╬∩≡σΣσδσφΦσ ≥σΩ≤∙σπε ≡αßε≥α■∙σπε ∩ε≥εΩα

    public static Thread currentThread();
    • destroy

    ╧≡Φφ≤ΣΦ≥σδⁿφεσ ταΓσ≡°σφΦσ ≡αßε≥√ ∩ε≥εΩα

    public void destroy();
    • dumpStack

    ┬√ΓεΣ ≥σΩ≤∙σπε ±εΣσ≡µΦ∞επε ±≥σΩα Σδ  ε≥δαΣΩΦ

    public static void dumpStack();
    • enumerate

    ╧εδ≤≈σφΦσ Γ±σ⌡ εß·σΩ≥εΓ Tread ΣαφφεΘ π≡≤∩∩√

    public static int enumerate(Thread  tarray[]);
    • getName

    ╬∩≡σΣσδσφΦσ Φ∞σφΦ ∩ε≥εΩα

    public final String getName();
    • getPriority

    ╬∩≡σΣσδσφΦσ ≥σΩ≤∙σπε ∩≡Φε≡Φ≥σ≥α ∩ε≥εΩα

    public final int getPriority();
    • getThreadGroup

    ╬∩≡σΣσδσφΦσ π≡≤∩∩√, Ω Ωε≥ε≡εΘ ∩≡ΦφαΣδσµΦ≥ ∩ε≥εΩ

    public final ThreadGroup getThreadGroup();
    • interrupt

    ╧≡σ≡√ΓαφΦσ ∩ε≥εΩα

    public void interrupt();
    • interrupted

    ╬∩≡σΣσδσφΦσ,  Γδ σ≥±  δΦ ∩ε≥εΩ ∩≡σ≡Γαφφ√∞

    public static boolean interrupted();
    • isAlive

    ╬∩≡σΣσδσφΦσ, Γ√∩εδφ σ≥±  ∩ε≥εΩ ΦδΦ φσ≥

    public final boolean isAlive();
    • isDaemon

    ╬∩≡σΣσδσφΦσ,  Γδ σ≥±  δΦ ∩ε≥εΩ Σσ∞εφε∞

    public final boolean isDaemon();
    • isInterrupted

    ╬∩≡σΣσδσφΦσ,  Γδ σ≥±  δΦ ∩ε≥εΩ ∩≡σ≡Γαφφ√∞

    public boolean isInterrupted();
    • join

    ╬µΦΣαφΦσ ταΓσ≡°σφΦ  ∩ε≥εΩα

    public final void join();

    ╬µΦΣαφΦσ ταΓσ≡°σφΦ  ∩ε≥εΩα Γ ≥σ≈σφΦσ ταΣαφφεπε Γ≡σ∞σφΦ. ┬≡σ∞  ταΣασ≥±  Γ ∞ΦδδΦ±σΩ≤φΣα⌡

    public final void join(long millis);

    ╬µΦΣαφΦσ ταΓσ≡°σφΦ  ∩ε≥εΩα Γ ≥σ≈σφΦσ ταΣαφφεπε Γ≡σ∞σφΦ. ┬≡σ∞  ταΣασ≥±  Γ ∞ΦδδΦ±σΩ≤φΣα⌡ Φ φαφε±σΩ≤φΣα⌡

    public final void join(long  millis, int  nanos);
    • resume

    ╟α∩≤±Ω Γ≡σ∞σφφε ∩≡Φε±≥αφεΓδσφφεπε ∩ε≥εΩα

    public final void resume();
    • run

    ╠σ≥εΣ Γ√τ√Γασ≥±  Γ ≥ε∞ ±δ≤≈ασ, σ±δΦ ∩ε≥εΩ ß√δ ±ετΣαφ ΩαΩ εß·σΩ≥ ± Φφ≥σ≡⌠σΘ±ε∞ Runnable

    public void run();
    • setDaemon

    ╙±≥αφεΓΩα Σδ  ∩ε≥εΩα ≡σµΦ∞α Σσ∞εφα

    public final void setDaemon(boolean on);
    • setName

    ╙±≥αεΓΩα Φ∞σφΦ ∩ε≥εΩα

    public final void setName(String name);
    • setPriority

    ╙±≥αφεΓΩα ∩≡Φε≡Φ≥σ≥α ∩ε≥εΩα

    public final void setPriority(int newPriority);
    • sleep

    ╟αΣσ≡µΩα ∩ε≥εΩα φα ταΣφφεσ Γ≡σ∞ . ┬≡σ∞  ταΣασ≥±  Γ ∞ΦδδΦ±σΩ≤φΣα⌡ Φ φαφε±σΩ≤φΣα⌡

    public static void sleep(long millis);

    ╟αΣσ≡µΩα ∩ε≥εΩα φα ταΣφφεσ Γ≡σ∞ . ┬≡σ∞  ταΣασ≥±  Γ ∞ΦδδΦ±σΩ≤φΣα⌡ Φ φαφε±σΩ≤φΣα⌡

    public static void sleep(long millis, int nanos);
    • start

    ╟α∩≤±Ω ∩ε≥εΩα φα Γ√∩εδφσφΦσ

    public void start();
    • stop

    ╬±≥αφεΓΩα Γ√∩εδφσφΦ  ∩ε≥εΩα

    public final void stop();

    └Γα≡ΦΘφα  ε±≥αφεΓΩα Γ√∩εδφσφΦ  ∩ε≥εΩα ± ταΣαφφ√∞ Φ±Ωδ■≈σφΦσ∞

    public final void stop(Throwable obj);
    • suspend

    ╧≡Φε±≥αφεΓΩα ∩ε≥εΩα

    public final void suspend();
    • toString

    ╤≥≡εΩα, ∩≡σΣ±≥αΓδ ■∙α  εß·σΩ≥-∩ε≥εΩ

    public String toString();
    • yield

    ╧≡Φε±≥αφεΓΩα ≥σΩ≤∙σπε ∩ε≥εΩα Σδ  ≥επε  ≈≥εß√ ≤∩≡αΓδσφΦσ ß√δε ∩σ≡σΣαφε Σ≡≤πε∞≤ ∩ε≥εΩ≤

    public static void yield();

    ╤ετΣαφΦσ Σε≈σ≡φσπε Ωδα±±α φα ßατσ Ωδα±±α Thread

    ╨α±±∞ε≥≡Φ∞ ∩σ≡Γ√Θ ±∩ε±εß ≡σαδΦτα÷ΦΦ ∞φεπε∩ε≥ε≈φε±≥Φ, ε±φεΓαφφ√Θ φα φα±δσΣεΓαφΦΦ ε≥ Ωδα±±α Thread. ╧≡Φ Φ±∩εδⁿτεΓαφΦΦ ²≥επε ±∩ε±εßα Γ√ ε∩≡σΣσδ σ≥σ Σδ  ∩ε≥εΩα ε≥Σσδⁿφ√Θ Ωδα±±, φα∩≡Φ∞σ≡, ≥αΩ:

    class DrawRectangles extends Thread
    {
      . . .
      public void run()
      {
        . . .
      }
    }

    ╟Σσ±ⁿ ε∩≡σΣσδσφ Ωδα±± DrawRectangles, Ωε≥ε≡√Θ  Γδ σ≥±  Σε≈σ≡φΦ∞ ∩ε ε≥φε°σφΦ■ Ω Ωδα±±≤ Thread.

    ╬ß≡α≥Φ≥σ ΓφΦ∞αφΦσ φα ∞σ≥εΣ run. ╤ετΣαΓα  ±ΓεΘ Ωδα±± φα ßατσ Ωδα±±α Thread, Γ√ Σεδµφ√ Γ±σπΣα ε∩≡σΣσδ ≥ⁿ ²≥ε≥ ∞σ≥εΣ, Ωε≥ε≡√Θ Φ ß≤Σσ≥ Γ√∩εδφ ≥ⁿ±  Γ ≡α∞Ωα⌡ ε≥Σσδⁿφεπε ∩ε≥εΩα.

    ╟α∞σ≥Φ∞, ≈≥ε ∞σ≥εΣ run φσ Γ√τ√Γασ≥±  φα∩≡ ∞≤■ φΦΩαΩΦ∞Φ Σ≡≤πΦ∞Φ ∞σ≥εΣα∞Φ. ╬φ ∩εδ≤≈ασ≥ ≤∩≡αΓδσφΦσ ∩≡Φ τα∩≤±Ωσ ∩ε≥εΩα ∞σ≥εΣε∞ start.

    ╩αΩ ²≥ε ∩≡εΦ±⌡εΣΦ≥?

    ╨α±±∞ε≥≡Φ∞ ∩≡ε÷σΣ≤≡≤ τα∩≤±Ωα ∩ε≥εΩα φα ∩≡Φ∞σ≡σ φσΩε≥ε≡επε Ωδα±±α DrawRectangles.

    ┬φα≈αδσ Γα°σ ∩≡ΦδεµσφΦσ Σεδµφε ±ετΣα≥ⁿ εß·σΩ≥ Ωδα±±α Thread:

    public class MultiTask2 extends Applet
    {
      Thread m_DrawRectThread = null;
      . . .
      public void start()
      {
        if (m_DrawRectThread == null)
        {
          m_DrawRectThread = new DrawRectangles(this);
          m_DrawRectThread.start();
        }
      }
    }

    ╤ετΣαφΦσ εß·σΩ≥α Γ√∩εδφ σ≥±  ε∩σ≡α≥ε≡ε∞ new Γ ∞σ≥εΣσ start, Ωε≥ε≡√Θ ∩εδ≤≈ασ≥ ≤∩≡αΓδσφΦσ, ΩεπΣα ∩εδⁿτεΓα≥σδⁿ ε≥Ω≡√Γασ≥ ΣεΩ≤∞σφ≥ HTML ± α∩δσ≥ε∞. ╤≡ατ≤ ∩ε±δσ ±ετΣαφΦ  ∩ε≥εΩ τα∩≤±Ωασ≥±  φα Γ√∩εδφσφΦσ, Σδ  ≈σπε Γ√τ√Γασ≥±  ∞σ≥εΣ start.

    ╫≥ε Ωα±ασ≥±  ∞σ≥εΣα run, ≥ε σ±δΦ ∩ε≥εΩ Φ±∩εδⁿτ≤σ≥±  Σδ  Γ√∩εδφσφΦ  ΩαΩεΘ δΦßε ∩σ≡ΦεΣΦ≈σ±ΩεΘ ≡αßε≥√, ≥ε ²≥ε≥ ∞σ≥εΣ ±εΣσ≡µΦ≥ Γφ≤≥≡Φ ±σß  ßσ±Ωεφσ≈φ√Θ ÷ΦΩδ. ╩επΣα ÷ΦΩδ ταΓσ≡°ασ≥±  Φ ∞σ≥εΣ run ΓετΓ≡α∙ασ≥ ≤∩≡αΓδσφΦσ, ∩ε≥εΩ ∩≡σΩ≡α∙ασ≥ ±Γε■ ≡αßε≥≤ φε≡∞αδⁿφ√∞, φσ αΓα≡ΦΘφ√∞ εß≡ατε∞. ─δ  αΓα≡ΦΘφεπε ταΓσ≡°σφΦ  ∩ε≥εΩα ∞εµφε Φ±∩εδⁿτεΓα≥ⁿ ∞σ≥εΣ interrupt.

    ╬±≥αφεΓΩα ≡αßε≥α■∙σπε ∩ε≥εΩα Γ√∩εδφ σ≥±  ∞σ≥εΣε∞ stop. ╬ß√≈φε ε±≥αφεΓΩα Γ±σ⌡ ≡αßε≥α■∙Φ⌡ ∩ε≥εΩεΓ, ±ετΣαφφ√⌡ α∩δσ≥ε∞, Γ√∩εδφ σ≥±  ∞σ≥εΣε∞ stop Ωδα±±α α∩δσ≥α:

    public void stop()
    {
      if (m_DrawRectThread != null)
      {
        m_DrawRectThread.stop();
        m_DrawRectThread = null;
      }
    }

    ═α∩ε∞φΦ∞, ≈≥ε ²≥ε≥ ∞σ≥εΣ Γ√τ√Γασ≥± , ΩεπΣα ∩εδⁿτεΓα≥σδⁿ ∩εΩΦΣασ≥ ±≥≡αφΦ÷≤ ±σ≡Γσ≡α Web, ±εΣσ≡µα∙≤■ α∩δσ≥.

    ╨σαδΦτα÷Φ  Φφ≥σ≡⌠σΘ±α Runnable

    ╬∩Φ±αφφ√Θ Γ√°σ ±∩ε±εß ±ετΣαφΦ  ∩ε≥εΩεΓ ΩαΩ εß·σΩ≥εΓ Ωδα±±α Thread ΦδΦ ≤φα±δσΣεΓαφφ√⌡ ε≥ φσπε Ωδα±±εΓ Ωαµσ≥±  Σε±≥α≥ε≈φαε σ±≥σ±≥Γσφφ√∞. ╬ΣφαΩε ²≥ε≥ ±∩ε±εß φσ σΣΦφ±≥Γσφφ√Θ. ┼±δΦ Γα∞ φ≤µφε ±ετΣα≥ⁿ ≥εδⁿΩε εΣΦφ ∩ε≥εΩ, ≡αßε≥α■∙≤■ εΣφεΓ≡σ∞σφφε ± ΩεΣε∞ α∩δσ≥α, ∩≡ε∙σ Γ√ß≡α≥ⁿ Γ≥ε≡εΘ ±∩ε±εß ± Φ±∩εδⁿτεΓαφΦσ∞ Φφ≥σ≡⌠σΘ±α Runnable.

    ╚Σσ  ταΩδ■≈ασ≥±  Γ ≥ε∞, ≈≥ε ε±φεΓφεΘ Ωδα±± α∩δσ≥α, Ωε≥ε≡√Θ  Γδ σ≥±  Σε≈σ≡φΦ∞ ∩ε ε≥φε°σφΦ■ Ω Ωδα±±≤ Applet, Σε∩εδφΦ≥σδⁿφε ≡σαδΦτ≤σ≥ Φφ≥σ≡⌠σΘ± Runnable, ΩαΩ ²≥ε ∩εΩαταφε φΦµσ:

    public class MultiTask extends 
      Applet implements Runnable
    {
      Thread m_MultiTask = null;
      . . .
      public void run()
      {
        . . .
      }
    
      public void start()
      {
        if (m_MultiTask == null)
        {
          m_MultiTask = new Thread(this);
          m_MultiTask.start();
        }
      }
    
      public void stop()
      {
        if (m_MultiTask != null)
        {
          m_MultiTask.stop();
          m_MultiTask = null;
        }
      }
    }

    ┬φ≤≥≡Φ Ωδα±±α φσεß⌡εΣΦ∞ε ε∩≡σΣσδΦ≥ⁿ ∞σ≥εΣ run, Ωε≥ε≡√Θ ß≤Σσ≥ Γ√∩εδφ ≥ⁿ±  Γ ≡α∞Ωα⌡ ε≥Σσδⁿφεπε ∩ε≥εΩα. ╧≡Φ ²≥ε∞ ∞εµφε ±≈Φ≥α≥ⁿ, ≈≥ε ΩεΣ α∩δσ≥α Φ ΩεΣ ∞σ≥εΣα run ≡αßε≥α■≥ εΣφεΓ≡σ∞σφφε ΩαΩ ≡ατφ√σ ∩ε≥εΩΦ.

    ─δ  ±ετΣαφΦ  ∩ε≥εΩα Φ±∩εδⁿτ≤σ≥±  ε∩σ≡α≥ε≡ new. ╧ε≥εΩ ±ετΣασ≥±  ΩαΩ εß·σΩ≥ Ωδα±±α Thread, ∩≡Φ≈σ∞ Ωεφ±≥≡≤Ω≥ε≡≤ ∩σ≡σΣασ≥±  ±±√δΩα φα Ωδα±± α∩δσ≥α:

    m_MultiTask = new Thread(this);

    ╧≡Φ ²≥ε∞, ΩεπΣα ∩ε≥εΩ τα∩≤±≥Φ≥± , ≤∩≡αΓδσφΦσ ∩εδ≤≈Φ≥ ∞σ≥εΣ run, ε∩≡σΣσδσφφ√Θ Γ Ωδα±±σ α∩δσ≥α.

    ╩αΩ τα∩≤±≥Φ≥ⁿ ∩ε≥εΩ?

    ╟α∩≤±Ω Γ√∩εδφ σ≥± , ΩαΩ Φ ≡αφⁿ°σ, ∞σ≥εΣε∞ start. ╬ß√≈φε ∩ε≥εΩ τα∩≤±Ωασ≥±  Φτ ∞σ≥εΣα start α∩δσ≥α, ΩεπΣα ∩εδⁿτεΓα≥σδⁿ ε≥εß≡αµασ≥ ±≥≡αφΦ÷≤ ±σ≡Γσ≡α Web, ±εΣσ≡µα∙≤■ α∩δσ≥. ╬±≥αφεΓΩα ∩ε≥εΩα Γ√∩εδφ σ≥±  ∞σ≥εΣε∞ stop.



Java | ╧≡εΣ≤Ω≥√ Φ ≡σ°σφΦ  | ╥σ⌡φεδεπΦΦ | ╤σ≡ΓΦ± Φ εß≤≈σφΦσ
╬ Ωε∞∩αφΦΦ | ╧α≡≥φσ≡√ | ═εΓε±≥Φ | ╧εΦ±Ω
Sun Microsystems Inc. Corporate Information Our partners News and Events Search on site Java Computing Products and Solutions Technologies and Researches Education and Service Content